package demo1;
import java.math.*;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Scanner;

//public class test0 {
    //1. 编写程序，顺序输出给定字符串中所出现过的大写英文字母，每个字母只输出一遍；若无大写英文字母则输出 “Not Found”。
    //输入格式：输入为一个以回车结束的字符串（少于 80 个字符）。
    //输出格式：按照输入的顺序在一行中输出所出现过的大写英文字母，每个字母只输出一遍。

    //2.输入用户名，判断密码是否合法(密码长度8~10位,必须包含大写字母、小写字母，不能以数字开头)。合法则输出“合法”，不合法输出“不合法”。
    //输入格式示例（仅作格式参考）：
    //ab1278ab
    //输出格式示例：
    //不合法

    //3.本题要求实现方法覆盖，通过覆盖的方法输出指定信息。
    //
    //方法重载与方法覆盖区别如下：
    //方法重载(Overloading)：如果有两个方法的方法名相同，但参数不一致，哪么可以说一个方法是另一个方法的重载；
    //
    //方法覆盖（Overriding）：如果在子类中定义一个方法，其名称、返回类型及参数签名正好与父类中某个方法的名称、返回类型及参数签名相匹配，那么可以说，子类的方法覆盖了父类的方法。
    //
    //样例输入
    //10 10
    //样例输出
    //Inside area for figure.
    //Area is :100.0
    //Inside area for rectangle.
    //Area is :100.0

    //4.本题要求打印指定底和高且相等的平行四边形, 注意通过空格或缩进,维持输出形状与样例一致。
    //
    //样例输入
    //6
    //样例输出
    //     ******
    //    ******
    //   ******
    //  ******
    // ******
    //******

    //5. 将以下代码改为用if进行描述

    //6.本关的编程任务是补全右侧代码片段中 Begin 至 End 中间的代码，编写一个能求出整数 x 平方根的小程序，具体要求如下：
    //
    //使用二分查找，实现 int mySqrt(int x) 函数，求平方根的功能。计算并返回 x 的平方根，其中 x 是非负整数。
    //注：由于返回类型是整数，结果只保留整数的部分，小数部分将被舍去。
    //测试输入：
    //
    //4
    //预期输出：
    //
    //2
//    public static int mySqrt(int x) {
//        int left = 0, right = x, ans = -1;
//        while (left <= right) {
//            int mid = left + (right - left) / 2;
//            if ((long) mid * mid <= x) {
//                ans = mid;
//                left = mid + 1;
//            } else {
//                right = mid - 1;
//            }
//        }
//        return ans;
//        int left = 0;
//        int right = x;
//        int mid = 0;
//        int ret = 0;
//        while(left <= right) {
//            mid = (left + right) / 2;
//            if(mid * mid <= x) {
//                left = mid + 1;
//                ret = mid;
//            } else {
//                right = mid - 1;
//            }
//        }
//        return ret;
//    }

    //7.本题要求使用 Collection 类的 Collections.max() 来获取向量的最大元素，并输出结果。
    //
    //样例输入
    //3 5 2 1 6 7
    //样例输出
    //7

//    public static void main1(String[] args) {
//        //6题测试
//        System.out.println(mySqrt(10));
//        Scanner sc = new Scanner(System.in);
//        int l = sc.nextInt();
//        int m = sc.nextInt();
//        int[] tree = new int[l + 1];
//        int[] arr = new int[m * 2];
//        Arrays.fill(tree, 1);
//        for (int i = 0; i < arr.length; i++) {
//            arr[i] = sc.nextInt();
//        }
//        for (int i = 1; i <= m; i++) {
//            for (int j = arr[2 * (i - 1)]; j <= arr[2 * i - 1]; j++) {
//                if (tree[j] == 1) {
//                    tree[j] = 0;
//                }
//            }
//        }
//        int count = 0;
//        for (int i = 0; i <= l; i++) {
//            if (tree[i] == 1) {
//                count++;
//            }
//        }
//        System.out.println(count);
//    }

//    public static void main2(String[] args) {
//        int[] source = {100,200,500,4,5,6};
//        int[] copy=Arrays.copyOfRange(source,0,2);//复制数组source，下标[1,3)范围
//        System.out.printf("%d:%d:%d",copy[0],copy[1],copy.length);
//        Tom cat1 = new Tom();
//        Tom cat2 = new Tom();
//        int resultOne = cat1.getSum(1,2,3,4);
//        int resultTwo = cat2.getSum(10,30);System.out.printf("%d:%d",resultOne,resultTwo);
//        Fish redFish = new Fish();
//        Lake lake = new Lake();
//        lake.setFish(redFish);
//        lake.foodFish(120);
//        int w= lake.fish.weight;
//        Fish fishOK = lake.getFish();
//        System.out.printf("%d:%d:%d",w,lake.fish.weight,fishOK.weight);

//    }
//}


//class Tom {
//    static int sum;
//    int getSum(int ... item) {
//        for (int n : item) {
//            sum += n;
//        }
//        return sum;
//    }
//}
//
//class Fish {
//    int weight;
//}
//
//class Lake {
//    Fish fish;
//    void setFish(Fish s) {
//        fish = s;
//    }
//    void foodFish(int m) {
//        fish.weight = fish.weight + m;
//    }
//    Fish getFish() {
//        fish.weight -= 10;
//        return fish;
//    }
//}

//abstract class Animal {
//    abstract void cry();
//    abstract String getAnimalName();
//}
//
//class Dog extends Animal {
//    @Override
//    public void cry() {
//        System.out.println("汪汪！");
//    }
//
//    @Override
//    public String getAnimalName() {
//        return ("小狗");
//    }
//}
//
//class Cat extends Animal {
//    @Override
//    public void cry() {
//        System.out.println("喵喵！");
//    }
//
//    @Override
//    String getAnimalName() {
//        return "小猫";
//    }
//}
//
//class Simulator {
//    void playSound(Animal animal) {
//        animal.cry();
//    }
//}
//
//public class test0 {
//    public static void main(String[] args) {
//        Simulator simulator = new Simulator();
//        simulator.playSound(new Dog());
//        simulator.playSound(new Cat());
//    }
//}


// 0 0
// 1 0
// 1 1
// 0 1
//public class test0 {
//    public static void main(String[] args) {
//        Scanner sc = new Scanner(System.in);
//        int n = sc.nextInt();
//        long[][] arr = new long[n][2];
//        for(int i = 0; i < n ; i++) {
//            for(int j = 0; j < 2; j++) {
//                arr[i][j] = sc.nextLong();
//            }
//        }
//        long s = 0L;
//        for(int i = 0; i < n - 1; i++) {
//                s += arr[i][0] * arr[i + 1][1] - arr[i + 1][0]  * arr[i][1];
//        }
//        System.out.println(Math.abs(s));
//    }
//}


//public class test0 {
//    public static void main(String[] args) {
//        Scanner sc = new Scanner(System.in);
//        String a = sc.nextLine();
//        String b = sc.nextLine();
//        char[] arr = a.toCharArray();
//        char[] brr = b.toCharArray();
//        int[] crr = new int[brr.length];
//        int j = 0, k = 0;
//        int flag = 0;
//        for(int i = 0; i < brr.length; i++) {
//            for(j = k; j < arr.length; j++) {
//                if(brr[i] == arr[j] || Character.toLowerCase(arr[j]) == brr[i]) {
//                    crr[i] = j;
//                    k = j + 1;
//                    flag = 1;
//                    break;
//                }
//            }
//            if(flag == 0) {
//                System.out.println("No");
//                return;
//            }
//            flag = 0;
//        }
//        for(int i = 0; i < arr.length; i++) {
//            if(arr[i] >= 'A' && arr[i] <= 'Z') {
//                flag = 1;
//                for(j = 0; j < crr.length; j++) {
//                    if(i == crr[j]) {
//                        flag = 2;
//                        break;
//                    }
//                }
//                break;
//            }
//        }
//        if(flag == 2 || flag == 0) {
//            System.out.println("Yes");
//        } else {
//            System.out.println("No");
//        }
//    }
//}


//public class test0 {
//    public static long f(long a, long b) {
//        long m = 1;
//        for(int i = 1; i <= b - 1; i++) {
//            a *= (a-1);
//        }
//        for(int i = 1; i <= b; i++) {
//            m *= i;
//        }
//        return (a / m);
//    }
//    public static void main(String[] args) {
//        Scanner sc = new Scanner(System.in);
//        int n = sc.nextInt();
//        long a = 0, b = 0;
//        long count = 0;
//        for(a = 1; a <= n; a++) {
//            for(b = 1; b <= a; b++) {
//                if((f(a,b) % 2) == 1) {
//                    count++;
//                }
//            }
//        }
//        System.out.println(f(10,2));
//    }
//}


//public class test0 {
//    public static void main(String[] args) {
//        Scanner sc = new Scanner(System.in);
//        String str1 = sc.nextLine();
//        int[] arr = new int[1000];
//        for(int i = 0; i < str1.length(); i++) {
//            for(int j = i + 2; j < str1.length(); j++) {
//                String str2 = str1.substring(i, j);
//                StringBuilder str3 = new StringBuilder(str2);
//                String str4 = str3.reverse().toString();
//                if(!str2.equals(str4)) {
//
//                }
//            }
//        }
//        System.out.println(str1.substring(1, 3));
//    }
//} 未完成


public class test0 {
    public static void main(String[] args) {

    }
}